// 类 : 在es5中使用函数的方式创建类
function Person() {
  // this

  // let this = new Object() // 原料
  // this.say = function(){} // 加工
  // return this 产出
  // console.log(this === person);
  this.sayThis = function () {
    //this--> 实例
    console.log(this === person);
  }
}


let per = Person();
console.log(per);// window  Person null undefined


// 怎么解决这个问题 原型
Person.prototype.sayThat = function () {
  console.log('that');
};


let person = new Person();
// 实例
console.log(person);// window Person null undefined {}
person.sayThis();

// new了之后 悄悄的做了什么 ?
// 如果 将所有的方法和属性都挂载到 this上会有什么问题


let person2 = new Person();

person2.sayThis();

console.log(person2.sayThis === person.sayThis);// false

person.sayThat();
person2.sayThat();

console.log(person2.sayThat === person.sayThat);// true

//


